﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ch04
{
    class Class5
    {
        static void Main(string[] args)
        {
            //1900-1-1是星期一

            //接收用户输入一个日期
            Console.Write("请输入日期：");
            string date = Console.ReadLine();
            //获取日期字符串中的年月日
            string[] arr = date.Split('-', '/');
            int year = int.Parse(arr[0]);
            int month = int.Parse(arr[1]);
            int day = int.Parse(arr[2]);

            //定义变量保存相差的总天数
            int days = 0;
            //根据输入的年份计算出当前输入年的1月1日距离1900年的1月1日相差多少天
            for (int i = 1900; i <year;i++)
            {
                //判断如果是平年那么加365如果是润年加366
                days += i % 4 == 0 && i % 100 != 0 || i % 400 == 0 ? 366 : 365;
            }
            //根据输入日期计算出该日期是该年的第几天，并累加到总天数上
            for (int i = 1; i < month; i++)
            {
                switch (i)
                {
                    case 2: days += (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) ? 29 : 28; break;
                    case 4:
                    case 6:
                    case 9:
                    case 11: days += 30; break;
                    default: days += 31; break;
                }
            }
            days += day;

            //用相差的总天数%7，余数就是星期几
            int index = days % 7;
            string[] week = { "日", "一", "二", "三", "四", "五", "六" };
            Console.WriteLine("星期" + week[index]);

        }
    }
}
